﻿using Signit.Sdk.Types;

namespace Signit.Sdk.Entity
{
    /**
     * 签名初始化数据。包含印章数据、手写数据、证书数据、证书签名证书秘钥访问口令、证书类型、 渲染模式、签名地理位置、联系方式、签名是否锁定、签名原因。
     * 印章数据、手写数据仅一个不为空的有效。
     */
    public class InitialValue
    {
        /**
         * 印章数据.
         */
        public SealData SealData { get; set; }

        /**
         * 手写签名数据.
         */
        public WriteData WriteData { get; set; }

        /**
         * 证书数据.
         */
        public CertData CertData { get; set; }

        /**
         * 证书签名证书密钥访问口令.
         */
        public string CertPassin { get; set; }

        /**
         * 证书类型.
         * 对应枚举：CertType
         */
        public CertType CertType { get; set; }

        /**
         * 渲染模式. 对应枚举：
         * 对应枚举：RenderMode
         */
        public RenderMode RenderingMode { get; set; } = RenderMode.GRAPHIC;

        /**
         * 签名地理位置.
         */
        public string Location { get; set; }

        /**
         * 联系方式.
         */
        public string Contact { get; set; }

        /**
         * 签名是否锁定.
         */
        public bool Locked { get; set; }

        /**
         * 签名原因.
         */
        public string Reason { get; set; }

        /**
         * 文本框文本内容
         */
        public string TextContent { get; set; }

        /**
         * 二维码内容字符串.
         */
        public string QrcodeContent { get; set; }
    }
}